<!DOCTYPE html> 
<!--
 Copyright (c) 2010, 2017 TU Wien ACIN, fortiss GmbH
  
 This program and the accompanying materials are made available under the
 terms of the Eclipse Public License 2.0 which is available at
 http://www.eclipse.org/legal/epl-2.0.

 SPDX-License-Identifier: EPL-2.0
 
 Contributors:
   Ingo Hegny, Jose Cabral
     - initial API and implementation and/or initial documentation
-->

<html lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	<title>Development - Structured Datatypes</title>
	<link rel="stylesheet" type="text/css" href="../help.css">
</head>

<body>

<h1 id="topOfPage">Structured Datatypes</h1>

<p>FORTE provides support for structured datatypes <span class="specificText">STRUCT</span>. Thus the encapsulation of data, which belongs together, is possible and the engineering is facilitated. Currently <span class="specificText">STRUCT</span> datatypes have to be implemented in FORTE, since there are no export-filters. Based on the <a href="http://www.holobloc.com/doc/ita/s3.htm#3.4.5.1" target="_blank">Compliance Profile for Feasibility Studies</a> only the unique ASN1-tag of the STRUCT-datatype is used for encoding. Therefore the ASN1-tag has to be set to the same value on all devices that exchange STRUCT-datatypes over the network! For testing and documentation purposes a sample datatype is provided:</p> 

<img src="../../html/development/img/struct.png" alt="Example STRUCT"/>

<p>The definition file <span class="fileLocation">TestStruct.dtp</span> is included in 4DIAC-LIB. The according implementation <span class="fileLocation">FORTE_TestStruct.cpp</span> and <span class="fileLocation">FORTE_TestStruct.h</span> is provided in the module test of FORTE. </p>

<p>Caution: the ASN1-tag provided in the dtp-file has to match the typeID provided in the constructor of the implementation of the datatype.</p>

<div class="code">&#60;ASN1Tag Class="APPLICATION" Number="1" /&#62;</div>

<p>leads to</p>

<div class="code">typeID=(e_APPLICATION+e_CONSTRUCTED+1)</div>
 
<h1>Where to go from here?</h1>

<p>Go back to Development index:</p>

<p><a href="../../html/development/developmentIndex.html">Development Index</a></p>

<p>If you want to go back to the Start Here page, we leave you here a fast access</p>

<p><a href="../../html/startHere/startHere.html">Start Here page</a></p>

<p class="goToTop">Or <a href="#topOfPage">Go to top</a></p>

</body>
</html>